-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Initial Draft Version of Application #4
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
- Restore files included in the previous repository
Restore previous repository
Restore previous repository
- Load API information from local location for security.
- Add workflows for utilizing Github Action for CI
- Add sensitive data through Repository Secrets. Allow project to be built over GitHub Action with no error cause by missing file.
- Add sensitive data through Repository Secrets. Allow project to be built over GitHub Action with no error cause by missing file.
- Add missing permission (Permission.INTERNET)
- Implement Retrofit2 with Gson converter for receiving data over network in RESTful manner.
- Complete initial draft of Main Service Page. 1. It serves top three news (notifications) by each four categories. 2. Real-time data would be provided. 3. TODO: Add function to 'More' button.
- Pipeline supported by Coroutine Flow has been applied for receiving real-time data. - ViewModel updates UI right after it collects data from the constructed flow. - UseCase 'FetchTopThreeNoticeByCategory' manipulate raw data for deploying it to UI component. * DI using Dagger Hilt has been applied.
- Add missing tag ("AndroidEntryPoint").
- Automatic configuration update.
- Add local-level layer for data processing (LocalRepository) in order to reduce unnecessary network request. - Make RemoteSource only focuses on its designated job: "receiving raw data from the server"
- Apply improved pipeline for received data backed by local repository implemented. - Break down one general function into several 'smaller' function based on its assigned job.
- Add interface for UseCase 'FetchTopThreeNoticeByCategory' - Include four relatively 'smaller' functions that have to be utilized.
- Replace outdated function with a new functions that utilize improved data processing strategy - Break down one general function to several 'smaller' functions based on its assigned job
- Create class that generate Dummy data while simulating behavior of collecting data over network.
- Apply Dummy Data Generator at domain layer in order to utilize dummy data while developing sub-functionalities
- Add Simmer effect on Text composable under NotificationPreviewContainer. - Provides visual indication while application still waiting for data over network.
- Implement necessary libraries 1. Android Material library (for PullToRefresh) 2. Coroutines Test (for testing asynchronous task under JUnit environment)
- Add required vector asset for Image Button
- Apply Compose Navigator for moving between composables. - Separating reusable composable into independent file. - Remove unnecessary composable component
- Change scope of functions used inside of the class. (public -> private) - Add additional values for UI State. 1. isMoreOptionSelected (to be removed later.) 2. CategoryForMoreNotice (to be removed later.)
- Merge all data classes throughout the project into a single file. - DataWrappers, used to receive data over network, and to be deployed into UI components would be included.
- New behavior (network request to receive notices per page.) has been defined as a form of interface.
- New usecase, fetching notices per page in the given category, has been implemented and fully defined.
- Revert functions under FetchTopThreeNoticeByCategory usecase from receiving dummy data to receiving live data.
- Automatic configuration updated followed by Gradle update.
- Apply Compose Navigator for navigate between composables. - TopBar components would be changed based on the destination as well. - Appropriate action for each button on TopBar has been declared.
- Create new ViewModel for holding necessary state for updating UI component & allowing Navigator works as expected.
- Navigator related variables and actions have been declared. - NavController, NavHostController, NavGraph are defined based on the app structure & user scenario.
- New Composable for displaying notices from selected category. - Infinite scrolling, PullToRefresh functions have been applied. - Composable is reusable & shows appropriate notices depends on the given NoticeCategory.
- Add new ViewModel for holding necessary state for updating UI under MoreCategorizedNotification Composable. - Utility function for supporting infinite scrolling is defined.
- Class for creating dummy data while simulating behavior of network communication.
…network - Add new function 'getNoticesByCategoryPerPage' to initiate data receiving for newly added usecase
- Add new behavior under Retrofit service to request and receive necessary data for newly added usecase. - Corresponding function to initiate new behaviors has been declared. - Relocate file from directory model to data.
- Separate potentially reusable composable into its own file. - Enhance its reusability and make it easy to refactoring.
- Separate Custom Types (enum classes) into a single file.
Initial Draft Version of Application
Approve PR |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Initial Draft Version of Application contains key functionalities.